package Test.trycatch;

/**
 * @Author: guozhenran
 * @Date: 2023/4/25 10:43
 * @Description: try块中发生异常，try块中异常语句后的内容不会执行（return语句自然不会执行），
 * 执行的是捕获到异常的catch语句块和finally语句块
 */
public class Demo05 {
    public static void main(String[] args) {
        System.out.println(func());
    }

    public static int func() {
        int a = 10;
        try {
            System.out.println("try中的代码块");
            a = a / 0;
            a += 10;
            return a;
        } catch (Exception e) {
            a += 10;
            System.out.println("catch中的代码块");
        } finally {
            System.out.println("finally中的代码块");
            a += 10;
            if (a > 20) {
                System.out.println("a > 20,a =" + a);
            }
            a += 10;
        }
        System.out.println("hahaha");
        return a;
    }
}